1. Field
The present disclosure pertains to the field of computing and computer systems, and, more specifically, to the field of detecting addresses, instructions, data or other references to memory in a computer system.
2. Background
Some computer systems run programs that may be annotated with reference points (e.g., “instrumentation”) to track various references to memory by a computer program. For example, some computer programs may include instrumentation code to track a range of addresses accessed by the computer program and some action may be taken in response to accessing a particular address range. Typically, the logic used to compare a program's memory access to some tested range of memory addresses or values and/or performing some function in response to accessing a particular memory range is implemented within a software program or routine.
Performing memory access comparison operations in software may limit the type, number, and frequency of memory accesses that can be monitored, due, for example, to the overhead associated with executing the software neces sary to perform these checks. In general, increasing the size of a software program for monitoring functions, such as memory access filtering or monitoring, can decrease computer system performance, while expanding the code size, thereby requiring larger code storage devices and increased system cost.